
#include <string>



class test
{
public:
    const char& operator[] (const size_t position) const
    {
        // 边界检查
        // 日志数据访问
        // 检验数据完整性
        return text[position];
    }
    char& operator[] (const size_t position)
    {
        return const_cast<char &>(static_cast<const test &>(*this)[position]);
    }

private:
    std::string text;
};


// class test
// {
// public:
//     const char& operator[] (const size_t position) const
//     {
//         // 边界检查
//         // 日志数据访问
//         // 检验数据完整性
//         return text[position];
//     }
//     char& operator[] (const size_t position)
//     {
//         // 边界检查
//         // 日志数据访问
//         // 检验数据完整性
//         return text[position];
//     }

// private:
//     std::string text;
// };